<template>
  <div id="aCoursesList" class="bg-fa of">
    <!-- 讲师列表 开始 -->
    <section class="container">
      <header class="comm-title">
        <h2 class="fl tac">
          <span class="c-333">名师团队</span>
        </h2>
      </header>
      <section class="c-sort-box unBr">
        <div>
          <!-- /无数据提示 开始-->
          <section v-if="teachers.length===0" class="no-data-wrap">
            <em class="icon30 no-data-ico">&nbsp;</em>
            <span class="c-666 fsize14 ml10 vam">没有相关数据，小编正在努力整理中...</span>
          </section>
          <!-- /无数据提示 结束-->

          <!-- /数据列表 开始-->
          <article class="i-teacher-list">
            <ul class="of">
              <li v-for="teacher in teachers" :key="teacher.id">
                <section v-if="teachers.length>0" class="i-teach-wrap">
                  <div class="i-teach-pic">
                    <a :href="`/teacher/${teacher.id}`" :title="teacher.name">
                      <img
                        :alt="teacher.name"
                        :src="teacher.avatar?teacher.avatar:`https://xaa0310-gui-file.oss-cn-shanghai.aliyuncs.com/avatar/2022/07/25/3e91ca6eaaab4dc398b326ab3b95791f.jpg`"
                        width="142">
                    </a>
                  </div>
                  <div class="mt10 hLh30 txtOf tac">
                    <a :title="teacher.name" :href="`/teacher/${teacher.id}`" class="fsize18 c-666">{{ teacher.name }}</a>
                  </div>
                  <div class="hLh30 txtOf tac">
                    <span class="fsize14 c-999" >{{ teacher.career }}</span>
                  </div>
                  <div class="mt15 i-q-txt">
                    <p class="c-999 f-fA">{{ teacher.intro }}</p>
                  </div>
                </section>
              </li>
            </ul>
            <div class="clear"/>
          </article>
          <!-- /数据列表 结束-->
        </div>
      </section>
    </section>
    <!-- /讲师列表 结束 -->
  </div>
</template>
<script>
import teacherApi from '~/api/teacher'
export default {
  async asyncData() { // 不能使用vue中定义的属性和函数  由于服务端执行也不能使用浏览器特有的API
    // 发起异步请求查询讲师列表数据
    // const response = teacherApi.getTeachers() // 异步请求 的结果不能同步获取
    const response = await teacherApi.getTeachers() // 阻塞获取异步请求执行的结果
    return { // nuxt提供的，在页面响应前执行  返回的结果会合并到data的数据中
      teachers: response.data.teachers
    }
  },
  // data() {
  //   return {
  //     teachers: []
  //   }
  // },
  // created() {
  //   // 页面渲染前查询讲师列表数据
  //   this.getTeachers()
  // },
  methods: {
    // 查询讲师列表数据
    getTeachers() {
      teacherApi.getTeachers().then(r => {
        this.teachers = r.data.items
      })
    }
  }
}
</script>
